.main input {
	width: 100%;
	margin: 0;
    border: 1px solid gray;
}
html, body {
	padding: 0;
	margin: 0;
	font-size: 12px;
}

.ruleeditor {
    font-family: monospace;
}

/* Table styles */
.main {
	border: 1px solid grey;
	background-color: #eee;
	width: 100%;
	margin-top: 10px;
}

.main .id {
	width: 30px;
	color: white;
	text-align: center;
	background-color: gray;
}

.main .mon {
	width: 46px;
	color: white;
	text-align: center;
	background-color: gray;
}

.main .rule {
	color: white;
	text-align: center;
	background-color: gray;
}

.main .cmd {
	width: 70px;
	color: white;
	background-color: gray;
}

.main .row {
	background-color: #ddd;
    height: 21px;
	padding: 0 5px;
}

.main .rowright {
	background-color: #ddd;
	text-align: right;
}

.main .rowcenter {
	background-color: #ddd;
	text-align: center;
}

.main .row .edit {
	display: none;
	cursor: pointer;
	position: absolute;
	margin-top: 0px;
}

.main .row .edittext:hover .edit {
	display: inherit;
}

/* Highlight styles */
.ipt-DROP {
	color: red;
}

.ipt-ACCEPT {
	color: green;
}

.ipt-net {
	color: gray;
}

.ipt-port {
	color: blue;
}

.ipt-comment {
	color: blue;
	font-style: italic;
}

.error {
	width: 100%;
	color: white;
	padding: 15px;
	text-align: center;
	display: none;
	border: 1px solid red;
	background-color: #f88;
	cursor: pointer;
	position: static;
}

.info {
	width: 100%;
	color: black;
	padding: 15px;
	text-align: center;
	display: none;
	border: 1px solid green;
	background-color: lightgreen;
	cursor: pointer;
	position: static;
}

.content {
	width: 1000px;
	margin: auto;
}

.splitter {
	background-color: #888;
	padding: 3px;
}

/* Main menu */
.mainmenu {
	border: 1px solid gray; color: white;  margin: 5px auto 0;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	padding: 3px; text-align: center;
	background: -webkit-gradient(linear, 0 0, 0 100%, from(#555), to(#444));
	background: -moz-linear-gradient(top,  #555,  #444);
	background-image: -o-linear-gradient(top,  #555,  #444);
	background: -ms-linear-gradient(top,  #555,  #444);
}

ul.tabs		{ display: table; padding: 0 0px; list-style: none; position: relative; }
ul.tabs li	{ margin: 0; padding: 0; list-style: none; display: table-cell; float: left; position: relative; }
ul.tabs li:hover	{
	background: -webkit-gradient(linear, 0 0, 0 100%, from(#666), to(#555));
	background: -moz-linear-gradient(top,  #666,  #555);
	background-image: -o-linear-gradient(top,  #666,  #555);
	background: -ms-linear-gradient(top,  #666,  #555);
}
ul.tabs li:hover:first-child	{
	border-top-left-radius: 5px; border-bottom-left-radius: 5px;
}
ul.tabs li:hover:last-child	{
	border-top-right-radius: 5px; border-bottom-right-radius: 5px;
}
ul.tabs a	{ position: relative; display: block; cursor: pointer; }
ul.tabs .item {
		color:white; padding: 4px 15px;
		text-decoration: none; /*margin-right: 5px;*/
}
ul.tabs .itemselect {
		color:white; padding: 4px 15px;
		text-decoration: none; /*margin-right: 5px;*/
		background-color: black;
}
ul.tabs .last {
		color:white; padding: 3px 15px; width: auto; margin-right: -1px;
		text-decoration: none; /*margin-right: 5px;*/
		background: -webkit-gradient(linear, 0 0, 0 100%, from(#555), to(#222));
		background: -moz-linear-gradient(top,  #555,  #222);
		background-image: -o-linear-gradient(top,  #555,  #222);
		background: -ms-linear-gradient(top,  #555,  #222);
}

ul.dropdown {
		margin: 0 0 0 -36px; padding: 5px; display: block; position: absolute; z-index: 999; top: 100%; display: none; left: 0;
		border: 1px solid gray; background-color: #222; color: white;
		-webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;
}
ul.dropdown ul.dropdown { top: 0; left: 95%; }
ul.dropdown li {
		margin: 0; padding: 1px; float: none; position: relative; list-style: none; display: block;
}
ul.dropdown li:hover { background: none; }
ul.dropdown li a {
	display: block; padding: 5px 15px; color: white; text-decoration: none; text-align: center;
	background-color: black;  width: 200px;
}

ul.dropdown li a:hover {
	background-color: #444;
}

ul.dropdown .first-row	{ float:left; }
ul.dropdown .second-row	{ float:right; }
ul.dropdown.large		{ width: 284px; left:-60px; }

/* Tool buttons */
.tools	{ padding: 10px; height: 24px; text-align: center; }
.tools .button			{
	border: 1px solid gray; color: white; padding: 6px; text-decoration: none; float:right; cursor: pointer; height: 15px; margin-left: 5px;  border-radius: 5px;
			background: -webkit-gradient(linear, 0 0, 0 100%, from(#333), to(#222));
			background: -moz-linear-gradient(top,  #333,  #222);
			background-image: -o-linear-gradient(top,  #333,  #222);
			background: -ms-linear-gradient(top,  #333,  #222);
			border: 1px solid #444;
			box-shadow: 0 0 5px #444;
}
.tools .button:hover	{
			background: -webkit-gradient(linear, 0 0, 0 100%, from(#222), to(#000));
			background: -moz-linear-gradient(top,  #444,  #333);
			background-image: -o-linear-gradient(top,  #444,  #333);
			background: -ms-linear-gradient(top,  #444,  #333);
}
.tools .button[disabled=disabled] 	{ background-color: #ccc; color:#999;
										background: -webkit-gradient(linear, 0 0, 0 100%, from(#444), to(#333));
										background: -moz-linear-gradient(top,  #444,  #333);
										background-image: -o-linear-gradient(top,  #444,  #333);
										background: -ms-linear-gradient(top,  #444,  #333);
										cursor: default; }
.tools .icon			{ float: right; margin: 0 4px; }


/* Dialogs */
.settings {
	display: none;
	border: 1px solid gray;
	background-color: silver;
	width: 400px;
	height: 200px;
}

.addchain {
	display: none;
	border: 1px solid gray;
	background-color: silver;
	width: 300px;
	height: 200px;
}

.dialog {
	display: none;
	border: 1px solid gray;
	background-color: silver;
	width: 300px;
	height: 200px;
}

#user-select-category			{ height: 200px; width: 140px; border: 1px solid #444; background-color: #333; vertical-align: top; float: left; }
#user-select-category	.item	{ padding: 3px; }
#user-select-category	.itemselected	{ padding: 3px; background-color: #111; }
#user-select-category	.item:hover	{ background-color: #444; cursor: pointer; }
#settings-page1, #settings-page2, #settings-page3				{ height: 200px; padding: 0px; display: none; border: 1px solid #444; background-color: #333; vertical-align: top; margin-left: 145px; overflow: auto; }
.item-icon			{ float: left; margin-right: 5px; }

.authform {
	border: 1px solid gray;
	background-color: #ccc;
	margin: auto;
	margin-top: 100px;
	padding: 15px;
}

.authform td {
	text-align: right;
}
